package com.vcc.service.client.vo.userCard;

import com.vcc.data.entity.CardType;
import com.vcc.data.entity.UserCardWallet;
import com.vcc.service.client.vo.baseVo.BaseVo;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;

import java.io.Serializable;
import java.math.BigDecimal;

@EqualsAndHashCode(callSuper = true)
@Data
@Setter
@Getter
public class UpdateUserCardWalletVo extends BaseVo implements Serializable {

    private String code;

    private String sectionNo;

    private BigDecimal dealerMinAmount;

    private BigDecimal amount;

    private Integer openCardOnLineCount;

    private BigDecimal exchangeRate;

    private Integer verifyOpenCardStatus;

    private Integer verifyRechargeCardStatus;

    private Integer verifyOutCardStatus;

    private Integer verifyCloseCardStatus;

    private Integer verifyFreezeUnFreezeCardStatus;


    public UpdateUserCardWalletVo() {
    }

    public UpdateUserCardWalletVo(CardType card, UserCardWallet userCardWallet) {
        super.setId(userCardWallet.getId());
        this.code = card.getCode();
        this.sectionNo = card.getSectionNo();
        this.dealerMinAmount = card.getDealerMinAmount();
        this.amount = userCardWallet.getAmount();
        this.openCardOnLineCount = userCardWallet.getOpenCardOnLineCount();
        this.exchangeRate = userCardWallet.getExchangeRate();
        this.verifyOpenCardStatus = userCardWallet.getVerifyOpenCardStatus();
        this.verifyRechargeCardStatus = userCardWallet.getVerifyRechargeCardStatus();
        this.verifyOutCardStatus = userCardWallet.getVerifyOutCardStatus();
        this.verifyCloseCardStatus = userCardWallet.getVerifyCloseCardStatus();
        this.verifyFreezeUnFreezeCardStatus = userCardWallet.getVerifyFreezeUnFreezeCardStatus();
    }
}
